package com.hst.capacity.application.biz;

import com.hst.capacity.domain.model.request.setting.franchisee.OrderPoolSwicthParam;
import com.hst.capacity.domain.model.request.setting.franchisee.VirtualDriverParam;
import com.hst.capacity.domain.model.request.setting.price.*;
import com.hst.capacity.domain.model.response.PagingResultVO;
import com.hst.capacity.domain.model.response.setting.franchisee.OrderPoolSwicthVO;
import com.hst.capacity.domain.model.response.setting.franchisee.VirtualDriverVO;
import com.hst.capacity.domain.model.response.setting.price.*;

import java.util.List;

public interface SettingBiz {

    String convertPwd(String pwd);

    PagingResultVO<NewExpressPriceVO> newExpressSearch(SearchParam param);

    PagingResultVO<ExpressSearchVO> expressSearch(SearchParam param);

    PagingResultVO<ExpressStpSearchVO> expressStpSearch(SearchParam param);

    PagingResultVO<IntercitySearchVO> intercitySearch(SearchParam param);

    PagingResultVO<SpecialCarSearchVO> specialCarSearch(SearchParam param);

    PagingResultVO<AirportSearchVO> airportSearch(SearchParam param);

    PagingResultVO<RailwayStationSearchVO> railwayStationSearch(SearchParam param);

    PagingResultVO<NewAirportPriceVO> newAirportSearch(SearchParam param);

    PagingResultVO<NewStationPriceVO> stationSearch(SearchParam param);

    PagingResultVO<NewAirportPriceVO> airportCommonSearch(SearchParam param);

    PagingResultVO<NewStationPriceVO> stationCommonSearch(SearchParam param);

    String newExpressSave(NewExSaveParam param);

    String expressSave(ExSaveParam param);

    String expressStpSave(StpSaveParam param);

    String intercitySave(IcSaveParam param);

    String specialCarSave(SpSaveParam param);

    String airportSave(NewApParam param);

    String stationSave(NewStParam param);

    String airportCommonSave(ApCommonParam param);

    String stationCommonSave(StCommonParam param);

    String newExpressStatus(String idPrice, String status);

    String airportStatus(String idPrice, String status);

    String stationStatus(String idPrice, String status);

    String airportCommonStatus(String idPrice, String status);

    String stationCommonStatus(String idPrice, String status);

    IntercityPriceVO intercityPrice(String idPrice);

    IntercityPriceVO intercityPriceByIdline(String idLine);

    NewExpressPriceVO newExpressPrice(String idPrice);

    String newExpressMarkup(String idPrice);

    String newExpressMarkupSave(String idPrice, String markup);

    ExpressPriceVO expressPrice(String idPrice);

    ExpressStpPriceVO expressStpPrice(String idPrice);

    SpecialCarPriceVO specialCarPrice(String idPrice);

    AirportPriceVO airportPrice(String idPrice);

    RailwayStationPriceVO railwayStationPrice(String idPrice);

    NewAirportPriceVO newAirportPrice(String idPrice);

    String newAirportMarkup(String idPrice);

    String newAirportMarkupSave(String idPrice, String markup);

    NewStationPriceVO newStationPrice(String idPrice);

    String newStationMarkup(String idPrice);

    String newStationMarkupSave(String idPrice, String markup);

    NewAirportPriceVO airportCommonDetail(String idPrice);

    String airportCommonMarkup(String idPrice);

    String airportCommonMarkupSave(String idPrice, String markup);

    NewStationPriceVO stationCommonDetail(String idPrice);

    String stationCommonMarkup(String idPrice);

    String stationCommonMarkupSave(String idPrice, String markup);

    ExSaveParam expressSelect(String idPrice);

    StpSaveParam expressStpSelect(String idPrice);

    IcSaveParam intercitySelect(String idPrice);

    SpSaveParam specialCarSelect(String idPrice);

    PagingResultVO<SpPremiumPriceVO> spAllPremiumPriceSelect(SpPremiumPriceParam param);

    List<SpPremiumPriceVO> spPremiumPriceSelect(SpPremiumPriceParam param);

    SpPremiumPriceVO spPremiumPriceDetail(String idPremiumPrice);

    String spPremiumPriceSave(SpPremiumPriceParam param);

    List<OrderPoolSwicthVO> orderPoolSwicthSelect(OrderPoolSwicthParam param);

    String orderPoolSwicthSave(OrderPoolSwicthParam param);

    List<VirtualDriverVO> virtualDriverLst(VirtualDriverParam param);

    VirtualDriverVO virtualDriverInfo(String id);

    String virtualDriverSave(VirtualDriverParam param);

    //ApSaveParam airportSelect(String idPrice);

}
